[INFO] fetching crate tari_bulletproofs_plus 0.4.1...
[INFO] testing tari_bulletproofs_plus-0.4.1 against master#1f7f8ea0721a3b1eb73e6c6d25cccb371434b320 for pr-154065-1
[INFO] extracting crate tari_bulletproofs_plus 0.4.1 into /workspace/builds/worker-3-tc1/source
[INFO] removed /workspace/builds/worker-3-tc1/source/rust-toolchain.toml
[INFO] started tweaking crates.io crate tari_bulletproofs_plus 0.4.1
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate tari_bulletproofs_plus 0.4.1
[INFO] tweaked toml for crates.io crate tari_bulletproofs_plus 0.4.1 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate tari_bulletproofs_plus 0.4.1 on toolchain 1f7f8ea0721a3b1eb73e6c6d25cccb371434b320
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate tari_bulletproofs_plus 0.4.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded zeroize_derive v1.3.2
[INFO] [stderr]   Downloaded quote v1.0.29
[INFO] [stderr]   Downloaded typenum v1.15.0
[INFO] [stderr]   Downloaded generic-array v0.14.6
[INFO] [stderr]   Downloaded clap_lex v0.5.0
[INFO] [stderr]   Downloaded windows-targets v0.48.1
[INFO] [stderr]   Downloaded is-terminal v0.4.9
[INFO] [stderr]   Downloaded unicode-ident v1.0.4
[INFO] [stderr]   Downloaded anstyle v1.0.1
[INFO] [stderr]   Downloaded itoa v1.0.3
[INFO] [stderr]   Downloaded either v1.8.0
[INFO] [stderr]   Downloaded zeroize v1.7.0
[INFO] [stderr]   Downloaded hermit-abi v0.3.2
[INFO] [stderr]   Downloaded keccak v0.1.2
[INFO] [stderr]   Downloaded proc-macro2 v1.0.64
[INFO] [stderr]   Downloaded platforms v3.0.2
[INFO] [stderr]   Downloaded walkdir v2.3.2
[INFO] [stderr]   Downloaded semver v1.0.17
[INFO] [stderr]   Downloaded bitflags v2.3.3
[INFO] [stderr]   Downloaded ryu v1.0.11
[INFO] [stderr]   Downloaded serde_derive v1.0.152
[INFO] [stderr]   Downloaded serde v1.0.152
[INFO] [stderr]   Downloaded clap v4.3.11
[INFO] [stderr]   Downloaded serde_json v1.0.85
[INFO] [stderr]   Downloaded clap_builder v4.3.11
[INFO] [stderr]   Downloaded regex v1.6.0
[INFO] [stderr]   Downloaded regex-syntax v0.6.27
[INFO] [stderr]   Downloaded syn v2.0.25
[INFO] [stderr]   Downloaded curve25519-dalek v4.1.2
[INFO] [stderr]   Downloaded rustix v0.38.3
[INFO] [stderr]   Downloaded fiat-crypto v0.2.8
[INFO] [stderr]   Downloaded libc v0.2.147
[INFO] [stderr]   Downloaded sha3 v0.10.6
[INFO] [stderr]   Downloaded linux-raw-sys v0.4.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f241cbffff837698d26139ce9f4ea248ad2f39c78f9fbdb2ae94fbe6c43ee152
[INFO] running `Command { std: "docker" "start" "-a" "f241cbffff837698d26139ce9f4ea248ad2f39c78f9fbdb2ae94fbe6c43ee152", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f241cbffff837698d26139ce9f4ea248ad2f39c78f9fbdb2ae94fbe6c43ee152", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f241cbffff837698d26139ce9f4ea248ad2f39c78f9fbdb2ae94fbe6c43ee152", kill_on_drop: false }`
[INFO] [stdout] f241cbffff837698d26139ce9f4ea248ad2f39c78f9fbdb2ae94fbe6c43ee152
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d880b48f37906169a75b723a1a25359ba5dc688d7686580c1a9231332ef46af9
[INFO] running `Command { std: "docker" "start" "-a" "d880b48f37906169a75b723a1a25359ba5dc688d7686580c1a9231332ef46af9", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.64
[INFO] [stderr]    Compiling quote v1.0.29
[INFO] [stderr]    Compiling unicode-ident v1.0.4
[INFO] [stderr]    Compiling syn v1.0.107
[INFO] [stderr]    Compiling typenum v1.15.0
[INFO] [stderr]    Compiling libc v0.2.147
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling subtle v2.4.1
[INFO] [stderr]    Compiling semver v1.0.17
[INFO] [stderr]    Compiling platforms v3.0.2
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]    Compiling serde_derive v1.0.152
[INFO] [stderr]    Compiling serde v1.0.152
[INFO] [stderr]    Compiling portable-atomic v1.6.0
[INFO] [stderr]    Compiling keccak v0.1.2
[INFO] [stderr]    Compiling either v1.8.0
[INFO] [stderr]    Compiling cpufeatures v0.2.9
[INFO] [stderr]    Compiling critical-section v1.1.2
[INFO] [stderr]    Compiling byteorder v1.4.3
[INFO] [stderr]    Compiling generic-array v0.14.6
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling curve25519-dalek v4.1.2
[INFO] [stderr]    Compiling syn v2.0.25
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling once_cell v1.19.0
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling blake2 v0.10.6
[INFO] [stderr]    Compiling sha3 v0.10.6
[INFO] [stderr]    Compiling getrandom v0.2.10
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling ff v0.13.0
[INFO] [stderr]    Compiling group v0.13.0
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling thiserror-impl-no-std v2.0.2
[INFO] [stderr]    Compiling zeroize_derive v1.3.2
[INFO] [stderr]    Compiling thiserror-no-std v2.0.2
[INFO] [stderr]    Compiling zeroize v1.7.0
[INFO] [stderr]    Compiling merlin v3.0.0
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.0
[INFO] [stderr]    Compiling tari_bulletproofs_plus v0.4.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/commitment_opening.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Zeroize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_CommitmentOpening`
[INFO] [stdout] 15 | pub struct CommitmentOpening {
[INFO] [stdout]    |            ----------------- `CommitmentOpening` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/commitment_opening.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                          ^------------
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          `Drop` is not local
[INFO] [stdout]    |                          move the `impl` block outside of this constant `_DERIVE_Drop_FOR_CommitmentOpening`
[INFO] [stdout] 15 | pub struct CommitmentOpening {
[INFO] [stdout]    |            ----------------- `CommitmentOpening` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/commitment_opening.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                          ^------------
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          `ZeroizeOnDrop` is not local
[INFO] [stdout]    |                          move the `impl` block outside of this constant `_DERIVE_zeroize_ZeroizeOnDrop_FOR_CommitmentOpening`
[INFO] [stdout] 15 | pub struct CommitmentOpening {
[INFO] [stdout]    |            ----------------- `CommitmentOpening` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/extended_mask.rs:14:28
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Debug, PartialEq, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                            ^------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Zeroize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_ExtendedMask`
[INFO] [stdout] 15 | pub struct ExtendedMask {
[INFO] [stdout]    |            ------------ `ExtendedMask` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/extended_mask.rs:14:37
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Debug, PartialEq, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                                     ^------------
[INFO] [stdout]    |                                     |
[INFO] [stdout]    |                                     `Drop` is not local
[INFO] [stdout]    |                                     move the `impl` block outside of this constant `_DERIVE_Drop_FOR_ExtendedMask`
[INFO] [stdout] 15 | pub struct ExtendedMask {
[INFO] [stdout]    |            ------------ `ExtendedMask` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/extended_mask.rs:14:37
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Debug, PartialEq, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                                     ^------------
[INFO] [stdout]    |                                     |
[INFO] [stdout]    |                                     `ZeroizeOnDrop` is not local
[INFO] [stdout]    |                                     move the `impl` block outside of this constant `_DERIVE_zeroize_ZeroizeOnDrop_FOR_ExtendedMask`
[INFO] [stdout] 15 | pub struct ExtendedMask {
[INFO] [stdout]    |            ------------ `ExtendedMask` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/generators/pedersen_gens.rs:40:41
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[derive(Copy, Clone, Debug, PartialEq, Zeroize)]
[INFO] [stdout]    |                                         ^------
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `Zeroize` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_ExtensionDegree`
[INFO] [stdout] 41 | #[repr(u8)]
[INFO] [stdout] 42 | pub enum ExtensionDegree {
[INFO] [stdout]    |          --------------- `ExtensionDegree` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/range_witness.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Zeroize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_RangeWitness`
[INFO] [stdout] 15 | pub struct RangeWitness {
[INFO] [stdout]    |            ------------ `RangeWitness` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/range_witness.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                          ^------------
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          `Drop` is not local
[INFO] [stdout]    |                          move the `impl` block outside of this constant `_DERIVE_Drop_FOR_RangeWitness`
[INFO] [stdout] 15 | pub struct RangeWitness {
[INFO] [stdout]    |            ------------ `RangeWitness` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/range_witness.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                          ^------------
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          `ZeroizeOnDrop` is not local
[INFO] [stdout]    |                          move the `impl` block outside of this constant `_DERIVE_zeroize_ZeroizeOnDrop_FOR_RangeWitness`
[INFO] [stdout] 15 | pub struct RangeWitness {
[INFO] [stdout]    |            ------------ `RangeWitness` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 19.47s
[INFO] running `Command { std: "docker" "inspect" "d880b48f37906169a75b723a1a25359ba5dc688d7686580c1a9231332ef46af9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d880b48f37906169a75b723a1a25359ba5dc688d7686580c1a9231332ef46af9", kill_on_drop: false }`
[INFO] [stdout] d880b48f37906169a75b723a1a25359ba5dc688d7686580c1a9231332ef46af9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ea26498732335375289a87cc45ef65a7e2336071f7be8e55fb2694cc76a97423
[INFO] running `Command { std: "docker" "start" "-a" "ea26498732335375289a87cc45ef65a7e2336071f7be8e55fb2694cc76a97423", kill_on_drop: false }`
[INFO] [stderr]    Compiling rustix v0.38.3
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling serde_json v1.0.85
[INFO] [stderr]    Compiling ciborium-io v0.2.1
[INFO] [stderr]    Compiling bitflags v2.3.3
[INFO] [stderr]    Compiling half v1.8.2
[INFO] [stderr]    Compiling linux-raw-sys v0.4.3
[INFO] [stderr]    Compiling clap_lex v0.5.0
[INFO] [stderr]    Compiling itoa v1.0.3
[INFO] [stderr]    Compiling anstyle v1.0.1
[INFO] [stderr]    Compiling ryu v1.0.11
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling regex-syntax v0.6.27
[INFO] [stderr]    Compiling walkdir v2.3.2
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling oorandom v11.1.3
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/commitment_opening.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Zeroize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_CommitmentOpening`
[INFO] [stdout] 15 | pub struct CommitmentOpening {
[INFO] [stdout]    |            ----------------- `CommitmentOpening` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/commitment_opening.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                          ^------------
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          `Drop` is not local
[INFO] [stdout]    |                          move the `impl` block outside of this constant `_DERIVE_Drop_FOR_CommitmentOpening`
[INFO] [stdout] 15 | pub struct CommitmentOpening {
[INFO] [stdout]    |            ----------------- `CommitmentOpening` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/commitment_opening.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                          ^------------
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          `ZeroizeOnDrop` is not local
[INFO] [stdout]    |                          move the `impl` block outside of this constant `_DERIVE_zeroize_ZeroizeOnDrop_FOR_CommitmentOpening`
[INFO] [stdout] 15 | pub struct CommitmentOpening {
[INFO] [stdout]    |            ----------------- `CommitmentOpening` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/extended_mask.rs:14:28
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Debug, PartialEq, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                            ^------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Zeroize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_ExtendedMask`
[INFO] [stdout] 15 | pub struct ExtendedMask {
[INFO] [stdout]    |            ------------ `ExtendedMask` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/extended_mask.rs:14:37
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Debug, PartialEq, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                                     ^------------
[INFO] [stdout]    |                                     |
[INFO] [stdout]    |                                     `Drop` is not local
[INFO] [stdout]    |                                     move the `impl` block outside of this constant `_DERIVE_Drop_FOR_ExtendedMask`
[INFO] [stdout] 15 | pub struct ExtendedMask {
[INFO] [stdout]    |            ------------ `ExtendedMask` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/extended_mask.rs:14:37
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Debug, PartialEq, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                                     ^------------
[INFO] [stdout]    |                                     |
[INFO] [stdout]    |                                     `ZeroizeOnDrop` is not local
[INFO] [stdout]    |                                     move the `impl` block outside of this constant `_DERIVE_zeroize_ZeroizeOnDrop_FOR_ExtendedMask`
[INFO] [stdout] 15 | pub struct ExtendedMask {
[INFO] [stdout]    |            ------------ `ExtendedMask` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/generators/pedersen_gens.rs:40:41
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[derive(Copy, Clone, Debug, PartialEq, Zeroize)]
[INFO] [stdout]    |                                         ^------
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `Zeroize` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_ExtensionDegree`
[INFO] [stdout] 41 | #[repr(u8)]
[INFO] [stdout] 42 | pub enum ExtensionDegree {
[INFO] [stdout]    |          --------------- `ExtensionDegree` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/range_witness.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Zeroize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_RangeWitness`
[INFO] [stdout] 15 | pub struct RangeWitness {
[INFO] [stdout]    |            ------------ `RangeWitness` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/range_witness.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                          ^------------
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          `Drop` is not local
[INFO] [stdout]    |                          move the `impl` block outside of this constant `_DERIVE_Drop_FOR_RangeWitness`
[INFO] [stdout] 15 | pub struct RangeWitness {
[INFO] [stdout]    |            ------------ `RangeWitness` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/range_witness.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                          ^------------
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          `ZeroizeOnDrop` is not local
[INFO] [stdout]    |                          move the `impl` block outside of this constant `_DERIVE_zeroize_ZeroizeOnDrop_FOR_RangeWitness`
[INFO] [stdout] 15 | pub struct RangeWitness {
[INFO] [stdout]    |            ------------ `RangeWitness` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling clap_builder v4.3.11
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling ciborium-ll v0.2.1
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling ciborium v0.2.1
[INFO] [stderr]    Compiling regex v1.6.0
[INFO] [stderr]    Compiling is-terminal v0.4.9
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling clap v4.3.11
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling tari_bulletproofs_plus v0.4.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/commitment_opening.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Zeroize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_CommitmentOpening`
[INFO] [stdout] 15 | pub struct CommitmentOpening {
[INFO] [stdout]    |            ----------------- `CommitmentOpening` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/commitment_opening.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                          ^------------
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          `Drop` is not local
[INFO] [stdout]    |                          move the `impl` block outside of this constant `_DERIVE_Drop_FOR_CommitmentOpening`
[INFO] [stdout] 15 | pub struct CommitmentOpening {
[INFO] [stdout]    |            ----------------- `CommitmentOpening` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/commitment_opening.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                          ^------------
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          `ZeroizeOnDrop` is not local
[INFO] [stdout]    |                          move the `impl` block outside of this constant `_DERIVE_zeroize_ZeroizeOnDrop_FOR_CommitmentOpening`
[INFO] [stdout] 15 | pub struct CommitmentOpening {
[INFO] [stdout]    |            ----------------- `CommitmentOpening` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/extended_mask.rs:14:28
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Debug, PartialEq, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                            ^------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Zeroize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_ExtendedMask`
[INFO] [stdout] 15 | pub struct ExtendedMask {
[INFO] [stdout]    |            ------------ `ExtendedMask` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/extended_mask.rs:14:37
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Debug, PartialEq, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                                     ^------------
[INFO] [stdout]    |                                     |
[INFO] [stdout]    |                                     `Drop` is not local
[INFO] [stdout]    |                                     move the `impl` block outside of this constant `_DERIVE_Drop_FOR_ExtendedMask`
[INFO] [stdout] 15 | pub struct ExtendedMask {
[INFO] [stdout]    |            ------------ `ExtendedMask` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/extended_mask.rs:14:37
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Debug, PartialEq, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                                     ^------------
[INFO] [stdout]    |                                     |
[INFO] [stdout]    |                                     `ZeroizeOnDrop` is not local
[INFO] [stdout]    |                                     move the `impl` block outside of this constant `_DERIVE_zeroize_ZeroizeOnDrop_FOR_ExtendedMask`
[INFO] [stdout] 15 | pub struct ExtendedMask {
[INFO] [stdout]    |            ------------ `ExtendedMask` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/generators/pedersen_gens.rs:40:41
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[derive(Copy, Clone, Debug, PartialEq, Zeroize)]
[INFO] [stdout]    |                                         ^------
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `Zeroize` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_ExtensionDegree`
[INFO] [stdout] 41 | #[repr(u8)]
[INFO] [stdout] 42 | pub enum ExtensionDegree {
[INFO] [stdout]    |          --------------- `ExtensionDegree` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/range_witness.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Zeroize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_RangeWitness`
[INFO] [stdout] 15 | pub struct RangeWitness {
[INFO] [stdout]    |            ------------ `RangeWitness` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/range_witness.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                          ^------------
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          `Drop` is not local
[INFO] [stdout]    |                          move the `impl` block outside of this constant `_DERIVE_Drop_FOR_RangeWitness`
[INFO] [stdout] 15 | pub struct RangeWitness {
[INFO] [stdout]    |            ------------ `RangeWitness` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/range_witness.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stdout]    |                          ^------------
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          `ZeroizeOnDrop` is not local
[INFO] [stdout]    |                          move the `impl` block outside of this constant `_DERIVE_zeroize_ZeroizeOnDrop_FOR_RangeWitness`
[INFO] [stdout] 15 | pub struct RangeWitness {
[INFO] [stdout]    |            ------------ `RangeWitness` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 18.02s
[INFO] running `Command { std: "docker" "inspect" "ea26498732335375289a87cc45ef65a7e2336071f7be8e55fb2694cc76a97423", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ea26498732335375289a87cc45ef65a7e2336071f7be8e55fb2694cc76a97423", kill_on_drop: false }`
[INFO] [stdout] ea26498732335375289a87cc45ef65a7e2336071f7be8e55fb2694cc76a97423
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] b6c4cac12e0522bd7dcb7068f84aa96280ad63d777d1ea914b704320f336b6e8
[INFO] running `Command { std: "docker" "start" "-a" "b6c4cac12e0522bd7dcb7068f84aa96280ad63d777d1ea914b704320f336b6e8", kill_on_drop: false }`
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/commitment_opening.rs:14:17
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stderr]    |                 ^------
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 `Zeroize` is not local
[INFO] [stderr]    |                 move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_CommitmentOpening`
[INFO] [stderr] 15 | pub struct CommitmentOpening {
[INFO] [stderr]    |            ----------------- `CommitmentOpening` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]    = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/commitment_opening.rs:14:26
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stderr]    |                          ^------------
[INFO] [stderr]    |                          |
[INFO] [stderr]    |                          `Drop` is not local
[INFO] [stderr]    |                          move the `impl` block outside of this constant `_DERIVE_Drop_FOR_CommitmentOpening`
[INFO] [stderr] 15 | pub struct CommitmentOpening {
[INFO] [stderr]    |            ----------------- `CommitmentOpening` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/commitment_opening.rs:14:26
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stderr]    |                          ^------------
[INFO] [stderr]    |                          |
[INFO] [stderr]    |                          `ZeroizeOnDrop` is not local
[INFO] [stderr]    |                          move the `impl` block outside of this constant `_DERIVE_zeroize_ZeroizeOnDrop_FOR_CommitmentOpening`
[INFO] [stderr] 15 | pub struct CommitmentOpening {
[INFO] [stderr]    |            ----------------- `CommitmentOpening` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/extended_mask.rs:14:28
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Debug, PartialEq, Zeroize, ZeroizeOnDrop)]
[INFO] [stderr]    |                            ^------
[INFO] [stderr]    |                            |
[INFO] [stderr]    |                            `Zeroize` is not local
[INFO] [stderr]    |                            move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_ExtendedMask`
[INFO] [stderr] 15 | pub struct ExtendedMask {
[INFO] [stderr]    |            ------------ `ExtendedMask` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/extended_mask.rs:14:37
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Debug, PartialEq, Zeroize, ZeroizeOnDrop)]
[INFO] [stderr]    |                                     ^------------
[INFO] [stderr]    |                                     |
[INFO] [stderr]    |                                     `Drop` is not local
[INFO] [stderr]    |                                     move the `impl` block outside of this constant `_DERIVE_Drop_FOR_ExtendedMask`
[INFO] [stderr] 15 | pub struct ExtendedMask {
[INFO] [stderr]    |            ------------ `ExtendedMask` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout] 
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout] running 26 tests
[INFO] [stderr]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/extended_mask.rs:14:37
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Debug, PartialEq, Zeroize, ZeroizeOnDrop)]
[INFO] [stderr]    |                                     ^------------
[INFO] [stderr]    |                                     |
[INFO] [stderr]    |                                     `ZeroizeOnDrop` is not local
[INFO] [stderr]    |                                     move the `impl` block outside of this constant `_DERIVE_zeroize_ZeroizeOnDrop_FOR_ExtendedMask`
[INFO] [stderr] 15 | pub struct ExtendedMask {
[INFO] [stderr]    |            ------------ `ExtendedMask` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/generators/pedersen_gens.rs:40:41
[INFO] [stderr]    |
[INFO] [stderr] 40 | #[derive(Copy, Clone, Debug, PartialEq, Zeroize)]
[INFO] [stderr]    |                                         ^------
[INFO] [stderr]    |                                         |
[INFO] [stderr]    |                                         `Zeroize` is not local
[INFO] [stderr]    |                                         move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_ExtensionDegree`
[INFO] [stderr] 41 | #[repr(u8)]
[INFO] [stderr] 42 | pub enum ExtensionDegree {
[INFO] [stderr]    |          --------------- `ExtensionDegree` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/range_witness.rs:14:17
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stderr]    |                 ^------
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 `Zeroize` is not local
[INFO] [stderr]    |                 move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_RangeWitness`
[INFO] [stderr] 15 | pub struct RangeWitness {
[INFO] [stderr]    |            ------------ `RangeWitness` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/range_witness.rs:14:26
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stderr]    |                          ^------------
[INFO] [stderr]    |                          |
[INFO] [stderr]    |                          `Drop` is not local
[INFO] [stderr]    |                          move the `impl` block outside of this constant `_DERIVE_Drop_FOR_RangeWitness`
[INFO] [stderr] 15 | pub struct RangeWitness {
[INFO] [stderr]    |            ------------ `RangeWitness` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/range_witness.rs:14:26
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Clone, Zeroize, ZeroizeOnDrop)]
[INFO] [stderr]    |                          ^------------
[INFO] [stderr]    |                          |
[INFO] [stderr]    |                          `ZeroizeOnDrop` is not local
[INFO] [stderr]    |                          move the `impl` block outside of this constant `_DERIVE_zeroize_ZeroizeOnDrop_FOR_RangeWitness`
[INFO] [stderr] 15 | pub struct RangeWitness {
[INFO] [stderr]    |            ------------ `RangeWitness` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `ZeroizeOnDrop` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `ZeroizeOnDrop` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `tari_bulletproofs_plus` (lib) generated 10 warnings
[INFO] [stderr] warning: `tari_bulletproofs_plus` (lib test) generated 10 warnings (10 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/tari_bulletproofs_plus-fe19492049ffcdaf)
[INFO] [stdout] test commitment_opening::test::test_empty_blinding ... ok
[INFO] [stdout] test extended_mask::test::test_assign ... ok
[INFO] [stdout] test protocols::transcript_protocol::test::test_identity_point ... ok
[INFO] [stdout] test range_proof::tests::test_extension_degree_from_proof_bytes ... ok
[INFO] [stdout] test range_parameters::test::test_init_errors ... ok
[INFO] [stdout] test range_proof::tests::test_serialized_element_size ... ok
[INFO] [stdout] test range_proof::tests::test_s_logarithm ... ok
[INFO] [stdout] test utils::generic::tests::test_padding ... ok
[INFO] [stdout] test range_witness::test::test_init_errors ... ok
[INFO] [stdout] test utils::nullrng::test::test_next ... ok
[INFO] [stdout] test utils::nullrng::test::test_try_fill_bytes ... ok
[INFO] [stdout] test utils::nullrng::test::test_fill_bytes ... ok
[INFO] [stdout] test protocols::scalar_protocol::test::test_nonzero ... ok
[INFO] [stdout] test extended_mask::test::test_blindings ... ok
[INFO] [stdout] test ristretto::tests::test_constants ... ok
[INFO] [stdout] test generators::pedersen_gens::test::test_extension_degree_size ... ok
[INFO] [stdout] test utils::generic::tests::test_nonce ... ok
[INFO] [stdout] test range_proof::tests::test_from_bytes ... ok
[INFO] [stdout] test range_proof::tests::test_prover_consistency_errors ... ok
[INFO] [stdout] test range_proof::tests::test_getters ... ok
[INFO] [stdout] test range_proof::tests::test_aggregation_lower_than_generators ... ok
[INFO] [stdout] test range_proof::tests::test_verify_errors ... ok
[INFO] [stdout] test ristretto::tests::test_commitments ... ok
[INFO] [stdout] test range_statement::test::test_init_errors ... ok
[INFO] [stdout] test range_proof::tests::test_consistency_errors ... ok
[INFO] [stdout] test generators::tests::aggregated_gens_iter_matches_flat_map ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 26 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.69s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/ristretto.rs (/opt/rustwide/target/debug/deps/ristretto-e6acdb1f28de906a)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test test_non_aggregated_single_proof_multiple_bit_lengths ... ok
[INFO] [stdout] test test_non_aggregated_multiple_proofs_single_bit_length ... ok
[INFO] [stdout] test test_aggregated_single_proof_multiple_bit_lengths ... ok
[INFO] [stdout] test test_mixed_aggregation_multiple_proofs_single_bit_length ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 55.70s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests tari_bulletproofs_plus
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test src/range_proof.rs - range_proof::RangeProof<P> (line 88) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 17.81s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "b6c4cac12e0522bd7dcb7068f84aa96280ad63d777d1ea914b704320f336b6e8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b6c4cac12e0522bd7dcb7068f84aa96280ad63d777d1ea914b704320f336b6e8", kill_on_drop: false }`
[INFO] [stdout] b6c4cac12e0522bd7dcb7068f84aa96280ad63d777d1ea914b704320f336b6e8
